Diversity schemes for 2-D encoded data

ABSTRACT

A method for communication includes receiving a signal carrying data including multiple data units using at least first and second reception channels. The data units are encoded with first and second codes such that, when the data units are arranged in rows and columns, the rows are encoded with the first code and the columns are encoded with the second code. The data units received by the first and second reception channels are selectively combined to produce composite data, which includes at least one row or column that includes a first data unit received from the first reception channel and at least a second data unit received from the second reception channel. The first and second codes for the composite data are decoded, including the at least one row or column, so as to reconstruct the data.

FIELD OF THE INVENTION

The present invention relates generally to communication systems, andparticularly to methods and systems for diversity reception.

BACKGROUND OF THE INVENTION

Some communication receivers use diversity techniques in order toimprove reception performance. For example, U.S. Patent ApplicationPublication 2010/0062737, whose disclosure is incorporated herein byreference, describes a receiver that comprises a plurality of paths forreceiving wireless signals. Each path has a designated antenna. Anantenna diversity chain is adapted for information communication betweenthe plurality of paths for selecting and using a path among theplurality of paths.

SUMMARY OF THE INVENTION

An embodiment of the present invention that is described herein includesa method for communication. The method includes receiving a signalcarrying data including multiple data units using at least first andsecond reception channels. The data units are encoded with first andsecond codes such that, when the data units are arranged in rows andcolumns, the rows are encoded with the first code and the columns areencoded with the second code. The data units received by the first andsecond reception channels are selectively combined to produce compositedata, which includes at least one row or column that includes a firstdata unit received from the first reception channel and at least asecond data unit received from the second reception channel. The firstand second codes for the composite data are decoded, including the atleast one row or column, so as to reconstruct the data.

In some embodiments, the data units include bits, bytes, words and/orsymbols. In an embodiment, receiving the signal includes decoding thefirst or second code for at least some of the rows or columns of thedata received by the first and second reception channels, andselectively combining the data units includes identifying one or morerows or columns whose decoding is successful in at least one of thefirst and second reception channels, and adding one or more of the dataunits of the identified rows or columns to the composite data. In anembodiment, selectively combining the data units includes identifying atleast one row or column whose decoding has failed in all the receptionchannels, and marking the data units of the identified row or column inthe composite data as erasures, and decoding the first and second codesincludes decoding at least one of the codes based on the erasures.

In another embodiment, decoding the first and second codes includesapplying an iterative decoding process that alternates between decodingof the first code and decoding of the second code. In yet anotherembodiment, each of the first and second codes includes one of an ErrorCorrection Code (ECC) and an Error Detection Code (EDC).

There is additionally provided, in accordance with an embodiment of thepresent invention, a communication apparatus including at least firstand second reception channels and circuitry. Each of the receptionchannels is configured to receive a signal that carries data includingmultiple data units. The data units are encoded with first and secondcodes such that, when the data units are arranged in rows and columns,the rows are encoded with the first code and the columns are encodedwith the second code. The circuitry is configured to selectively combinethe data units received by the first and second reception channels toproduce composite data, which includes one row or column that includes afirst data unit received from the first reception channel and at least asecond data unit received from the second reception channel, and todecode the first and second codes for the composite data, including theat least one row or column, so as to reconstruct the data.

The present invention will be more fully understood from the followingdetailed description of the embodiments thereof, taken together with thedrawings in which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram that schematically illustrates a wirelesscommunication system and associated data structures, in accordance withan embodiment of the present invention; and

FIG. 2 is a flow chart that schematically illustrates a method fordiversity reception, in accordance with an embodiment of the presentinvention.

DETAILED DESCRIPTION OF EMBODIMENTS Overview

Some communication systems encode data for transmission in twodimensions. In a typical 2-D encoding scheme, a transmitter arranges thedata in a table, encodes the rows of the table with a first code,encodes the columns of the table with a second code, and transmits theencoded data to a receiver. Each of the codes may comprise an ErrorCorrection Code (ECC) or Error Detection Code (EDC). The receiverdecodes the codes that encode the rows and columns in order toreconstruct the data.

Encoding schemes of this sort are used, for example, in Mobile DigitalTelevision (MDTV) transmission standards such as the Digital VideoBroadcasting-Handheld (DVB-H) standard, the China Multimedia MobileBroadcasting (CMMB) standard and the Advanced Television SystemsCommittee (ATSC) standards. Two-dimensional encoding in DVB-H isspecified in ETSI Technical report TR 102 377, entitled “Digital VideoBroadcasting (DVB); DVB-H Implementation Guidelines,” version 1.4.1,June, 2009, which is incorporated herein by reference. CMMB 2-D encodingis specified in standard GY/T 220.1-2006, entitled “Standard for RadioFilm and Television Industry in P.R. China—Mobile MultimediaBroadcasting Part 1: Framing Structure, Channel Coding and Modulationfor Broadcasting Channel,” Oct. 24, 2006, which is incorporated hereinby reference. Two-dimensional encoding in ATSC specifications isdescribed, for example, in “ATSC-Mobile DTV Standard, Part2—RF/Transmission System Characteristics,” document A/153, October,2009, which is incorporated herein by reference.

Embodiments of the present invention that are described herein provideimproved methods and systems for receiving and decoding signals thatcarry 2-D encoded data. In the disclosed embodiments, a diversityreceiver comprises multiple reception channels. Each reception channelreceives a respective replica of the 2-D signal via a respectiveantenna. Thus, each reception channel produces a respective 2-D datatable comprising the data received by that channel. The 2-D data tablesof the different reception channels are made-up of multiple data units,which may comprise, for example, bits, bytes, words or symbols.

The receiver constructs a composite data table from the multiple datatables received over the multiple reception channels, by selectivelycombining the data units of the different data tables. The compositedata table typically includes at least one hybrid row or column, whichcomprises one or more data units originating from the data table of onereception channel, and one or more data units originating from the datatable of a different reception channel. The receiver then decodes therows and columns of the composite data table, including the hybrid rowor column, so as to reconstruct the data.

The receiver may use various methods and criteria for constructing thecomposite data table from the data tables produced by the multiplereception channels. In some embodiments, the receiver decodes the firstand second codes for at least some of the rows and columns of the datatables received from the various reception channels. For each decodedrow or column in a certain data table, the receiver produces arespective success indication that indicates whether this row or columnwas decoded successfully. The receiver uses the success indications toselect which data units, and from which data tables, to include in thecomposite data table.

In constructing the composite data table, the receiver typicallyattempts to maximize the number of successfully-decoded rows andcolumns. In some embodiments, the receiver selects data units from rowsand columns that were decoded successfully by the reception channels andsubstitutes them into the composite data table. In some embodiments, theprocess of constructing the composite data table is iterative and/orinvolves additional decoding operations.

In one example embodiment, the receiver initially populates thecomposite data table with the columns that were decoded successfully inat least one of the reception channels. Then, the receiver decodes therows of the composite table. This row decoding process will typicallyperform far better than the row decoding process in each receptionchannel, since it is based on a higher number of data units that arealready known to be correct. In alternative embodiments, any othersuitable process can be used. Several additional examples are describedbelow.

The methods and systems described herein reconstruct the 2-D encodeddata with high reliability. As explained above, the composite data tablecomprises data units from successfully-decoded rows and columns that areselected on an individual basis from the different data tables.Therefore, the disclosed techniques are able to decode the first andsecond codes with considerably better performance, relative to a naivediversity process that simply selects the entire data table from thebest-performing reception channel.

System Description

FIG. 1 is a block diagram that schematically illustrates a wirelesscommunication system 20 and associated data structures, in accordancewith an embodiment of the present invention. System 20 comprises atransmitter (TX) 24, which transmits signals to a diversity receiver 28.System 20 may operate in accordance with various communication protocolsand may be used for various applications. In the present example, system20 is used for transmitting MDTV signals to mobile communicationterminals. Although the example of FIG. 1 shows a single transmitter anda single receiver for the sake of clarity, real-life systems typicallycomprise multiple transmitters and receivers.

The signals transmitted by transmitter 24 carry data that has beenencoded in two dimensions. Typically, the transmitter arranges a blockof data for transmission in a table 48 having rows 52 and columns 56.Each table entry is referred to herein as a data unit, and may comprise,for example, a bit, a byte, a word, a symbol or any other suitable dataunit. The transmitter encodes the rows with a first code, and thecolumns with a second code. The 2-D encoded data is them modulated ontoa Radio Frequency (RF) signal and transmitted over a wireless channel toreceiver 28.

Transmitter 24 may use any suitable types of codes to encode the rowsand columns of the data. Each of the codes may comprise an ErrorCorrection Code (ECC) such as a Low Density Parity check (LDPC) ofReed-Solomon (RS) code, an Error Detection Code (EDC) such as CyclicRedundancy Check (CRC), or any other suitable code. The codes used forencoding the rows and columns may comprise different codes or the samecode. Encoding of the columns may be performed either before or afterencoding of the columns. In other words, redundancy bits of one code maybe encoded with the other code.

Note that the terms “rows are encoded with a first code” and “columnsare encoded with a second code” are also meant to cover implementationsin which groups of two or more rows (or groups of two or more columns)are each encoded jointly to form code words. In CMMB systems, forexample, groups of columns may be encoded to form respective LDPC codewords.

Diversity receiver 28 comprises multiple receive antennas that arecoupled to multiple respective reception (RX) channels. The example ofFIG. 1 shows two receive antennas 32A and 32B, and two receptionchannels 36A and 36B. Alternatively, any suitable number of receptionchannels can be used. Each reception channel receives the signal fromtransmitter 24 over a different wireless channel, and therefore thereceived signals typically differ from one another.

Diversity receiver 28 uses the multiple signals received by the multiplereception channels to reconstruct the transmitted data with highreliability, using methods that are described in detail below. Thedisclosed techniques are particularly useful in fading channels, suchas, for example, non-line-of-sight and multipath channels.

Each reception channel receives the RF signal via its respectiveantenna, down-converts the signal to baseband, demodulates the signaland applies other functions such as filtering and gain control. Eachreception channel typically reconstructs a data table having rows andcolumns comprising the data units received by that reception channel. Inthe present example, reception channels 36A and 36B produce data tables60A and 60B, respectively. The rows and columns of tables 60A and 60Bcorrespond to the rows and columns of table 48 transmitted bytransmitter 24. Some of the data units in tables 60A and 60B, however,may be erroneous due to reception errors.

In the present example, reception channels 36A and 36B are coupled torespective 2-D decoding units 40A and 40B. Each 2-D decoding unitdecodes the first and second codes that encode the rows and columns ofthe data table produced by the respective reception channel. For eachdecoded row or column, the 2-D decoding unit produces a successindication that indicates whether the row or column was decodedsuccessfully. The success indications of the rows and columns of thedata tables of the different reception channels are provided to adiversity combining unit 44.

Diversity combining unit 44 constructs a composite data table 64 fromthe multiple data tables produced by the multiple reception channels.Typically, unit 44 selects individual data units from the rows andcolumns of the various data tables and populates the composite datatable with the selected data units. Typically, the composite data tableincludes at least one row or column, which comprises one or more dataunits selected from the data table of one reception channel, and one ormore data units selected from the data table of a different receptionchannel. In some embodiments, unit 44 selects the data units for thecomposite data table based on the success indications, i.e., selectsdata units from rows and columns whose decoding is known to besuccessful.

After populating composite data table 64, unit 44 decodes the first andsecond codes for the respective rows and columns of the composite datatable, so as to reconstruct the transmitted data. The reconstructed datais provided as output of receiver 28.

Since the composite data table is populated with data units selectedfrom rows and columns that were decoded successfully, i.e., data unitsthat are known to be correct with very high likelihood, datareconstruction is highly reliable. Moreover, the composite data tablecomprises successfully-decoded data units that are selected on anindividual basis from the different data tables. As such, decoding ofthe first and second codes for the composite data table is far morereliable than decoding of any individual data table.

Combining unit 44 may use various methods and criteria for constructingthe composite data table from the multiple data tables produced by themultiple reception channels. Several example methods are describedfurther below.

The configuration of receiver 28 shown in FIG. 1 is an exampleconfiguration, which is chosen purely for the sake of conceptualclarity. In alternative embodiments, any other suitable receiverconfiguration can be used. For example, generation of the row and columnsuccess indications may be performed in a single unit that handles thedata tables of all reception channels, rather than by multiple 2-Ddecoding units as in FIG. 1. For example, the functions of 2-D units 40Aand 40B and of combining unit 44 may be implemented in a single unit.

The various elements of receiver 28 can be implemented using hardware,such as using one or more RF Integrated Circuits (RFIC),Application-Specific Integrated Circuits (ASIC) or Field-ProgrammableGate Arrays (FPGA). Alternatively, certain receiver elements can beimplemented in software, or using a combination of hardware and softwareelements.

Generally, the receiver elements that decode the first and second codesto generate the success indications, and construct and decode thecomposite data table, are referred to herein collectively as circuitrythat carries out the techniques described herein. The circuitry maycomprise hardware elements, software elements, or both. In someembodiments, certain elements of receiver 28 may be implemented in ageneral-purpose processor, which is programmed in software to carry outthe functions described herein. The software may be downloaded to theprocessor in electronic form, over a network, for example, or it may,alternatively or additionally, be provided and/or stored onnon-transitory tangible media, such as magnetic, optical, or electronicmemory.

EXAMPLE 2-D DIVERSITY RECEPTION SCHEMES

In some embodiments, diversity combining unit 44 selects individual dataunits from successfully-decoded rows and columns of data tables 60A and60B, and populates composite data table 64 with the selected data units.Unit 44 then decodes the first and second codes for the rows and columnsof the composite data table.

In an example embodiment, unit 44 scans the rows of data table 60A. Upondetecting a row whose success indication indicates that the first codefor that row was decoded successfully, unit 44 copies the row to thecorresponding row in composite data table 64. Upon detecting a row whosesuccess indication indicates that decoding of the first code failed,unit 44 reverts to the corresponding row in data table 60B. If the rowin question in table 60B was decoded successfully, unit 44 copies therow from table 60B to composite table 64. Otherwise, the correspondingrow in composite table 64 is marked as errors or erasures.

In an alternative embodiment, unit 44 may scan the columns of datatables 60A and 60B in a similar manner, either in addition to or insteadof scanning the rows. Generally, unit 44 need not necessarily scan everyrow and every column in the data table of every reception channel. Insome embodiments, unit 44 may scan only some of the rows and/or some ofthe columns.

In some embodiments, receiver 28 decodes the first and/or the secondcode in a decoding process that uses erasures. In such a decodingprocess, indicating a given data unit as an erasure increases the errorcorrection capability of the decoding process. In these embodiments,when a given row or column is not decoded successfully in any of thereception channels, the data units of this row or column can be markedin the composite data table as erasures.

Note that a certain data unit may belong to a row that failed to decodein all reception channels, but also belong to a column that was decodedsuccessfully in one or more of the reception channels. In this case, thecorresponding data unit in the composite data table will typically bepopulated with the value that was decoded successfully in columndecoding. Similar logic can be applied to a data unit belonging to acolumn that were not decoded successfully in any of the channels.

In some embodiments, combining unit 44 constructs composite data table64 in an iterative process that involves additional decoding operationsof the first and/or second code. Consider, for example, a transmissionscheme in which the table columns are encoded with CRC and the tablerows are encoded with a Reed-Solomon (RS) ECC. In an example embodiment,unit 44 initially identifies the columns that have valid CRC in at leastone of the reception channels, and populate the composite data tablewith the data units of these columns. The remaining columns (whose CRChas failed in all reception channels) are marked as erasures. Then, unit44 decodes the RS code for the rows of the composite table using thepopulated data and erasures.

In another example embodiment, unit 44 may decode the rows and columnsof the composite table iteratively, in an alternating manner. In such aprocess, additional errors are corrected in each iteration, such thateach iteration improves the performance of the next. Referring to theabove CRC/RS example, unit 44 initially populates the composite datatable with the columns whose CRC was valid in at least one of thereception channels. The remaining columns are marked as erasures. Then,unit 44 decodes the RS code for the rows of the composite table. Thisrow decoding operation changes some of the erasures tosuccessfully-decoded data unit values, i.e., replaces some of theerasures with correct data values. The successfully-corrected data unitsmay cause the CRC of some columns to become valid, which enablesunmarking the erasures in those columns, which may in turn enableadditional rows to be decoded successfully in the next iteration. Thisiterative process may continue until meeting some termination criterion.

As another example, consider an implementation in which the rows areencoded with CRC. In an embodiment, unit 44 identifies rows that failedCRC decoding in one reception channel, replaces erased data units inthese rows with corresponding data units from another reception channel,and re-attempts to decode the CRC. In other words, unit 44 attempts tofind a mix of data units from different reception channel that enablessuccessful decoding of the CRC. For example, if a given row that stillfails CRC decoding comprises ten erasures, unit 44 may populate theseerasures with the odd-order data units from one reception channel andthe even-order data units from the other reception channel.Alternatively, any other mixture can be attempted.

Further alternatively, combining unit 44 may carry out any othersuitable process of populating and decoding the rows and columns ofcomposite data table 64 based on the data tables produced by themultiple reception channels.

FIG. 2 is a flow chart that schematically illustrates a method fordiversity reception, carried out by diversity receiver 28 of FIG. 1, inaccordance with an embodiment of the present invention. The methodbegins with reception channels 36A and 36B receiving a signal thatcarries 2-D encoded data, at a reception step 70. Each 2-D decoding unitdecodes the first and second codes that encode the rows and columns ofthe data table produced by the corresponding reception channel, at aninitial decoding step 74.

Diversity combining unit 44 constructs composite data table 64 from theindividual data units of the rows and columns of data tables 60A and 60Bproduced by reception channels 36A and 36B, at a diversity combiningstep 78. In an example embodiment, unit 44 populates the composite datatable with data units from rows and columns of tables 60A and 60B whosesuccess indications indicate successful decoding.

Unit 44 reconstructs the transmitted data from the composite data table,at a reconstruction step 82. Typically, unit 44 decodes the first andsecond codes that encode the rows and columns of the composite datatable, respectively, so as to reconstruct the data.

Although the embodiments described herein mainly address diversityreception of 2-D encoded data in MDTV receivers, the methods and systemsdescribed herein can also be used in other applications that involve 2-Dencoding, such as in other kinds of wireless receivers, Digital VideoDisks (DVDs), Hard Disk Drives (HDDs), memories and backplanes.

It will thus be appreciated that the embodiments described above arecited by way of example, and that the present invention is not limitedto what has been particularly shown and described hereinabove. Rather,the scope of the present invention includes both combinations andsub-combinations of the various features described hereinabove, as wellas variations and modifications thereof which would occur to personsskilled in the art upon reading the foregoing description and which arenot disclosed in the prior art. Documents incorporated by reference inthe present patent application are to be considered an integral part ofthe application except that to the extent any terms are defined in theseincorporated documents in a manner that conflicts with the definitionsmade explicitly or implicitly in the present specification, only thedefinitions in the present specification should be considered.

The invention claimed is:
 1. A method for communication, comprising:using at least first and second reception channels, receiving a signalthat carries data comprising multiple data units, wherein the data unitsare encoded with first and second codes such that, when the data unitsare arranged in rows and columns, the rows are encoded with the firstcode and the columns are encoded with the second code; selectivelycombining the data units received by the first and second receptionchannels to produce composite data, which includes at least one row orcolumn that comprises a first data unit received from the firstreception channel and at least a second data unit received from thesecond reception channel, based on row and column decoding successindications, including: identifying a given data unit for which one ofthe first and second codes is not decodeable in any of the receptionchannels, but for which the other of the first and second codes isdecodeable in at least one of the reception channels; and adding to thecomposite data the given data unit from a reception channel in which theother of the first and second codes is decodeable; and decoding thefirst and second codes for the composite data, including the at leastone row or column, so as to reconstruct the data.
 2. The methodaccording to claim 1, wherein the data units comprise at least one datatype selected from a group of types consisting of bits, bytes, words andsymbols.
 3. The method according to claim 1, wherein receiving thesignal comprises decoding the first or second code for at least some ofthe rows or columns of the data received by the first and secondreception channels, and wherein selectively combining the data unitscomprises identifying one or more rows or columns whose decoding issuccessful in at least one of the first and second reception channels,and adding one or more of the data units of the identified rows orcolumns to the composite data.
 4. The method according to claim 1,wherein decoding the first and second codes comprises applying aniterative decoding process that alternates between decoding of the firstcode and decoding of the second code.
 5. The method according to claim1, wherein each of the first and second codes comprises one of an ErrorCorrection Code (ECC) and an Error Detection Code (EDC).
 6. The methodaccording to claim 3, wherein selectively combining the data unitscomprises identifying at least one row or column whose decoding hasfailed in all the reception channels, and marking the data units of theidentified row or column in the composite data as erasures, and whereindecoding the first and second codes comprises decoding at least one ofthe codes based on the erasures.
 7. A communication apparatus,comprising: at least first and second reception channels, each of whichreception channels is configured to receive a signal that carries datacomprising multiple data units, wherein the data units are encoded withfirst and second codes such that, when the data units are arranged inrows and columns, the rows are encoded with the first code and thecolumns are encoded with the second code; and circuitry, which isconfigured to selectively combine the data units received by the firstand second reception channels to produce composite data, which includesone row or column that comprises a first data unit received from thefirst reception channel and at least a second data unit received fromthe second reception channel, based on row and column decoding successindications, including identifying a given data unit for which one ofthe first and second codes is not decodeable in any of the receptionchannels, but for which the other of the first and second codes isdecodeable in at least one of the reception channels, and adding to thecomposite data the given data unit from a reception channel in which theother of the first and second codes is decodeable, and to decode thefirst and second codes for the composite data, including the at leastone row or column, so as to reconstruct the data.
 8. The apparatusaccording to claim 7, wherein the data units comprise at least one datatype selected from a group of types consisting of bits, bytes, words andsymbols.
 9. The apparatus according to claim 7, wherein the circuitry isconfigured to decode the first or second code for at least some of therows or columns of the data received by the first and second receptionchannels, to identify one or more rows or columns whose decoding issuccessful in at least one of the first and second reception channels,and to add one or more of the data units of the identified rows orcolumns to the composite data.
 10. The apparatus according to claim 7,wherein the circuitry is configured to decode the first and second codesin an iterative decoding process that alternates between decoding of thefirst code and decoding of the second code.
 11. The apparatus accordingto claim 7, wherein each of the first and second codes comprises one ofan Error Correction Code (ECC) and an Error Detection Code (EDC). 12.The apparatus according to claim 9, wherein the circuitry is configuredto identify at least one row or column whose decoding has failed in allthe reception channels, to mark the data units of the identified row orcolumn in the composite data as erasures, and to decode at least one ofthe codes based on the erasures.